草庐IT

simplexml - PHP simplexml 实体

全部标签

xml - 如何告诉 XML 解析器忽略丢失的实体

如何告诉XML解析器忽略引用但未声明的实体?我遇到这样的异常:org.xml.sax.SAXParseException:Theentity"alpha"wasreferenced,butnotdeclared.我想要的是让解析器处理字符串“α”作为简单的字符串,而不是字符实体。另外,我有很多这样的实体,所以我不能告诉解析器单独忽略它们。 最佳答案 您可以编写一个脚本(例如,使用sed或perl),使用正则表达式替换来预处理输入文档并转义与符号,但XML可识别的字符实体的开头除外(即fivepredefinedones和任何您已申报

java - Java解析XML时保留 `
 
`等数字字符实体字符

我正在解析包含数字字符实体字符的XML,例如(但不限于) (换行回车)在Java中。解析时,我将节点的文本内容附加到StringBuffer,以便稍后将其写入文本文件。但是,当我将字符串写入文件或将其打印出来时,这些un​​icode字符被解析或转换为换行符/空格。在Java中遍历XML文件的节点并将文本内容节点存储到字符串时,如何保留原始数字字符实体字符符号?演示xml文件示例:示例Java代码。它加载XML,遍历节点并将每个节点的文本内容收集到StringBuffer。迭代结束后,它将StringBuffer写入控制台和文件(但没有 )符号。将这些符号存储到字符串时,有什么方法可以

java - 内联列表中具有属性的 SimpleXML 单深度元素

我要解析下面的XML5000000050000000.09CorrectNumbers我尝试通过以下类(class)实现这一目标:@Root(name="entry")publicclassOddsEntryXMLObject{@Attribute(name="key")privateStringiKey;@Attribute(name="jackpot",required=false)privateStringiJackpot;@Attribute(name="type",required=false)privateStringiType;@Element(name="value")

xml - 如何安全地处理 Scala 中的 unicode 用户输入(尤其是 XML 实体)

在我的网站上,我有一个接受一些文本用户输入的表单。对于“普通”角色,一切都很好。然而,当输入unicode字符时……好吧,情节变浓了。用户输入类似やっぱ死にかけてる这作为包含XML实体引用的文本进入服务器やっぱ死にかけてる?现在,当我想用​​HTML将其返回给客户端时,我该怎么做?如果我只是按原样输出字符串,脚本攻击就有可能发生。如果我尝试使用scala.xml.Text对其进行编码,它会转换为:やっ&a

java - 在 JDOM/DOM 中禁用 XML 实体解析

我正在编写一个用于XML文件后处理的Java应用程序。这些xml文件来自SemanticMediawiki的RDF-Export,因此它们具有rdf/xml语法。我的问题如下:当我读取xml文件时,文件中的所有实体都解析为Doctype中指定的值。例如在我的Doctype中..]>在根元素中这意味着成为我尝试过使用JDOM和标准JavaDOM。我认为这里相关的代码是针对标准DOM的:DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInstance();factory.setExpandEntityReferences(fa

XML 或文本声明不在实体的开头

抱歉有点蠢。但我开始明白(我缺乏知识)如果你想在该页面上使用RichFaces组件,则不可能转发到另一个页面。这是我在转发到包含RichFaces组件的页面时遇到的一些问题如果我转发到一个带有表单的页面,数百个包含的JavaScrip中的一些被解释为格式错误的XML标记。如果我使用嵌套表格,这些表格会丢失CSS文件并且看起来像普通的JSF2.0数据表格。当转发到演示中只有一个tabPanel的页面时TabPanel-ShowCase选项卡面板变得困惑,变得无法使用(见下图)。我不需要转发到包含RichFaces组件的页面,但如果有该选项就好了。可能我误解了有关如何使用RichFaces

java - 使用 SimpleXML 反序列化

编辑:删除了之前的编辑我正在尝试反序列化以下内容:113768812002013-08-19...213768812002013-08-19使用@RootpublicclassMatches{@ElementListprivateListlist;publicListgetMatches(){returnlist;}}和@Root(name="KAMP",strict=false)publicclassMatch{@Element(name="ID",required=false)publicStringId;@Element(name="SQLTID",required=false)

java - 是否有 Java XML API 可以在不解析字符实体的情况下解析文档?

我有一个程序需要解析包含字符实体的XML。程序本身不需要解决它们,而且它们的列表很大并且会发生变化,所以我想尽可能避免对这些实体的明确支持。这是一个简单的例子:Hellothere&something;是否有JavaXMLAPI可以在不解析(非标准)字符实体的情况下成功解析文档?理想情况下,它会将它们转化为可以专门处理的特殊事件或对象,但我会选择一个会默默抑制它们的选项。答案和例子:Skaffman给了我答案:使用StAX解析器并将IS_REPLACING_ENTITY_REFERENCES设置为false。这是我编写的用于试用的代码:XMLInputFactoryinputFacto

xml - 如何以编程方式通过 XML::Twig 添加实体声明?

对于我的生活,我无法理解用于实体处理的XML::Twig文档。我有一些用HTML::Tidy生成的XML。调用如下:my$tidy=HTML::Tidy->new({'indent'=>1,'break-before-br'=>1,'output-xhtml'=>0,'output-xml'=>1,'char-encoding'=>'raw',});$str="foo bar";$xml=$tidy->clean("$str");产生:foo barXML::Twig(可以理解)在 处出现barfs。我想做一些转换,通过XML::Twig运行它:my$twig=XM

java - 当来自不同实体类型的 ID 重叠时,是否可以将 @JsonIdentityInfo 与 ObjectIdGenerators.PropertyGenerator 一起使用?

当来自不同实体类型的ID重叠时,是否可以使用ObjectIdGenerators.PropertyGenerator来使用@JsonIdentityInfo?假设我有以下XML并想用Jackson2.x反序列化它:3Peter3dog3我用@JsonIdentityInfo(generator=ObjectIdGenerators.PropertyGenerator.class,property="id")注释了Foo和Bar类。反序列化失败,出现com.fasterxml.jackson.databind.JsonMappingException:AlreadyhadPOJOfori